package com.egao.common.module.cooperative.constants;

/**
 * 产教融合
 * 常量配置
 *
 * @author lym
 */
public class CooperativeProjectConstants {

    /**
     * 项目状态 进行中
     */
    public final static String CP_STATE_PROCEED = "0";
    /**
     * 项目状态 结束
     */
    public final static String CP_STATE_FINISH = "1";


    /**
     * 项目活动类型 项目活动
     */
    public final static String CPA_TYPE_ACTIVITY = "1";
    /**
     * 项目活动类型 项目风采
     */
    public final static String CPA_TYPE_SHINE = "2";
    /**
     * 项目活动类型 工作动态
     */
    public final static String CPA_TYPE_DYNAMIC = "3";


    /**
     * 项目活动审核状态 提交
     */
    public final static String CPA_STATE_SUBMIT = "2";
    /**
     * 项目活动审核状态 未通过
     */
    public final static String CPA_STATE_FAIL = "1";
    /**
     * 项目活动审核状态 通过
     */
    public final static String CPA_STATE_SUCCESS = "0";

    /**
     * 项目活动未申请发布
     */
    public final static String CPA_RELEASE_STATE = "3";

    /** 学生活动报名状态 报名 */
    public final static String CPAS_STATE_APPLY = "0";
    /** 学生活动报名状态 取消 */
    public final static String CPAS_STATE_CANCEL = "1";

    /** 学生活动签到状态 签到 */
    public final static String CPAS_SIGN_YES = "0";
    /** 学生活动签到状态 未签到 */
    public final static String CPAS_SIGN_NO = "1";


    /**
     * 项目活动发布状态 未发布
     */
    public final static String CPA_RELEASE_NO = "1";
    /**
     * 项目活动发布状态 发布
     */
    public final static String CPA_RELEASE_YES = "0";


    /**
     * 项目记录 操作角色 校级
     */
    public final static String RR_SCHOOL = "校级";
    /**
     * 项目记录 操作角色 导师
     */
    public final static String RR_TEACHER = "导师";
    /**
     * 项目记录 操作角色 单位
     */
    public final static String RR_COMPANY = "单位";
    /**
     * 项目记录 操作角色 学生
     */
    public final static String RR_STUDENT = "学生";

    /** banner 公开状态 公开 */
    public final static String BANNER_STATE_PUBLIC = "0";
    /** banner 公开状态 不公开 */
    public final static String BANNER_STATE_PRIVATE = "1";


    public final static String RC_PROJECT_INSERT = "项目添加";
    public final static String RC_PROJECT_UPDATE = "项目修改";
    public final static String RC_PROJECT_DELETE = "项目删除";
    public final static String RC_PROJECT_VIEW = "项目查看";

    public final static String RC_ACTIVITY_INSERT = "活动添加";
    public final static String RC_ACTIVITY_UPDATE = "活动修改";
    public final static String RC_ACTIVITY_DELETE = "活动删除";
    public final static String RC_ACTIVITY_VIEW = "活动查看";
    public final static String RC_ACTIVITY_AUDIT_FAIL = "活动审核不通过";
    public final static String RC_ACTIVITY_AUDIT_SUCCESS = "活动审核通过";

    public final static String RC_SHINE_INSERT = "项目风采添加";
    public final static String RC_SHINE_UPDATE = "项目风采修改";
    public final static String RC_SHINE_DELETE = "项目风采删除";
    public final static String RC_SHINE_VIEW = "项目风采查看";
    public final static String RC_SHINE_AUDIT_FAIL = "项目风采审核不通过";
    public final static String RC_SHINE_AUDIT_SUCCESS = "项目风采审核通过";

    public final static String RC_DYNAMIC_INSERT = "工作动态添加";
    public final static String RC_DYNAMIC_UPDATE = "工作动态修改";
    public final static String RC_DYNAMIC_DELETE = "工作动态删除";
    public final static String RC_DYNAMIC_VIEW = "工作动态查看";
    public final static String RC_DYNAMIC_AUDIT_FAIL = "工作动态审核不通过";
    public final static String RC_DYNAMIC_AUDIT_SUCCESS = "工作动态审核通过";

    /**
     * 添加操作说明
     */
    public final static String operateInsert(String type) {
        String operate = "";
        switch (type) {
            case CPA_TYPE_ACTIVITY:
                operate = RC_ACTIVITY_INSERT;
                break;
            case CPA_TYPE_SHINE:
                operate = RC_SHINE_INSERT;
                break;
            case CPA_TYPE_DYNAMIC:
                operate = RC_DYNAMIC_INSERT;
                break;
            default:
                operate = "";
                break;
        }
        return operate;
    }

    public final static String operateUpdate(String type) {
        String operate = "";
        switch (type) {
            case CPA_TYPE_ACTIVITY:
                operate = RC_ACTIVITY_UPDATE;
                break;
            case CPA_TYPE_SHINE:
                operate = RC_SHINE_UPDATE;
                break;
            case CPA_TYPE_DYNAMIC:
                operate = RC_DYNAMIC_UPDATE;
                break;
            default:
                operate = "";
                break;
        }
        return operate;
    }

    public final static String operateDelete(String type) {
        String operate = "";
        switch (type) {
            case CPA_TYPE_ACTIVITY:
                operate = RC_ACTIVITY_DELETE;
                break;
            case CPA_TYPE_SHINE:
                operate = RC_SHINE_DELETE;
                break;
            case CPA_TYPE_DYNAMIC:
                operate = RC_DYNAMIC_DELETE;
                break;
            default:
                operate = "";
                break;
        }
        return operate;
    }

    public final static String operateView(String type) {
        String operate = "";
        switch (type) {
            case CPA_TYPE_ACTIVITY:
                operate = RC_ACTIVITY_VIEW;
                break;
            case CPA_TYPE_SHINE:
                operate = RC_SHINE_VIEW;
                break;
            case CPA_TYPE_DYNAMIC:
                operate = RC_DYNAMIC_VIEW;
                break;
            default:
                operate = "";
                break;
        }
        return operate;
    }

    public final static String operateAudit(String type, String state) {
        String operate = "";
        switch (type) {
            case CPA_TYPE_ACTIVITY:
                operate = CPA_STATE_SUCCESS.equals(state) ? RC_ACTIVITY_AUDIT_SUCCESS: RC_ACTIVITY_AUDIT_FAIL;
                break;
            case CPA_TYPE_SHINE:
                operate = CPA_STATE_SUCCESS.equals(state) ? RC_SHINE_AUDIT_SUCCESS: RC_SHINE_AUDIT_FAIL;
                break;
            case CPA_TYPE_DYNAMIC:
                operate = CPA_STATE_SUCCESS.equals(state) ? RC_DYNAMIC_AUDIT_SUCCESS: RC_DYNAMIC_AUDIT_FAIL;
                break;
            default:
                operate = "";
                break;
        }
        return operate;
    }


}
